home *** CD-ROM | disk | FTP | other *** search
/ Aminet 52 / Aminet 52 (2002)(GTI - Schatztruhe)[!][Dec 2002].iso / Aminet / dev / gg / gengetopt-2.6.lha / gengetopt-2.6 / INSTALL < prev    next >
Text File  |  2001-04-10  |  8KB  |  175 lines

  1. Basic Installation
  2. ==================
  3.  
  4.     For more information specific to this package, please read the README
  5. file. This source code distribution  is autoconfiguring and you should be 
  6. able to compile it and install it without manual interventions such as 
  7. editing Makefiles, configuration files, and so on. These are generic 
  8. instructions for people who are not familiar with installing autoconfiguring
  9. software.
  10.  
  11. The simplest way to compile this package is to enter the source code
  12. main directory and do the following:
  13.    
  14.   1. Configure the source code by typing:
  15.         % sh ./configure
  16.  
  17.      If you're planning to install the package into your home directory
  18.      or to a location other than `/usr/local' then add the flag
  19.      `--prefix=PATH' to `configure'. For example, if your home directory  
  20.      is `/home/luser' you can configure the package to install itself there
  21.      by invoking:
  22.         % sh ./configure --prefix=/home/luser
  23.      
  24.      While running, `configure' prints some messages telling which
  25.      features is it checking for. 
  26.  
  27.   2. Compile the package by typing:
  28.         % make
  29.      Running `make' takes a while. If this is a very large package, now
  30.      is the time to go make some coffee.
  31.      
  32.   3. This package is bundled with self-tests for source-code 
  33.      verification. You can optionally run them after compilation by typing 
  34.         % make check
  35.  
  36.   4. Type `make install' to install the programs and any data files and
  37.      documentation. Type `make uninstall' to undo the installation.
  38.      During installation, the following files go to the following directories:
  39.         Executables          -> /prefix/bin
  40.         Libraries            -> /prefix/lib
  41.         Public header files  -> /prefix/include
  42.         Man pages            -> /prefix/man/man?
  43.         Info files           -> /prefix/info
  44.         Doc files            -> /prefix/share/doc/<prog name>
  45.         Share files          -> /prefix/share/<prog name>
  46.      where `prefix' is either `/usr/local' or the PATH that you specified
  47.      in the `--prefix' flag.
  48.  
  49.      If any of these directories do not presently exist, they will be
  50.      created on demand. 
  51.  
  52.      If you are installing in your home directory make sure that 
  53.      `/home/luser/bin' is in your path. If you're using the bash shell
  54.      add this line at the end of your .cshrc file:
  55.         PATH="/home/luser/bin:${PATH}"
  56.         export PATH
  57.      If you are using csh or tcsh, then use this line instead:
  58.         setenv PATH /home/luser/bin:${PATH}
  59.      By prepending your home directory to the rest of the PATH you can
  60.      override systemwide installed software with your own custom installation.
  61.  
  62.   5. You can remove the program binaries and object files from the
  63.      source code directory by typing `make clean'.  To also remove the
  64.      files that `configure' created (so you can compile the package for
  65.      a different kind of computer), type `make distclean'.
  66.  
  67. Compiler configuration
  68. ======================
  69.  
  70.    The `configure' shell script is responsible for choosing and configuring
  71. the compiler(s). 
  72.  
  73. The following options allow you to specify whether you
  74. want to enable or disable various debugging mechanisms:
  75.  
  76. `--enable-warnings'
  77.       Make the compilers very picky about warnings. Try this whenever you
  78.       write new code since it may catch a few bugs. This is not active by
  79.       default because all too often warnings can be too picky and scare
  80.       the end-user.
  81.  
  82. All programs are compiled with optimization level 2 by default (-O2).
  83. Occasionally that confuses the debugger when code is inlined. To disable
  84. optimization and enable debugging, set the shell environment variables
  85. CFLAGS, CXXFLAGS, FFLAGS to `-g'. On the bash shell, you can do this
  86. like this:
  87.   $ export CFLAGS="-g"
  88.   $ export CXXFLAGS="-g"
  89.   $ export FFLAGS="-g"
  90. On the tcsh shell, use the `setenv' command instead:
  91.   % setenv CFLAGS "-g"
  92.   ...etc...
  93. For other shell, please consult your shell's documentation.
  94.  
  95. Similarly, you can increase the optimization level by assigning these
  96. variables to "-g -O3". 
  97.  
  98. The following options allow you to reconsider the `configure' shell script's
  99. choice of Fortran compilers.
  100.  
  101. `--with-f2c'
  102.       Compile the Fortran code by translating it to C, even if a native
  103.       Fortran compiler is available. A copy of the f2c translator should be
  104.       bundled in the distribution. It will be compiled and then used to 
  105.       compile your Fortran code.
  106. `--with-g77'
  107.       Compile the Fortran code with g77 even if a proprietary Fortran  
  108.       compiler is available
  109. `--with-f77=F77'
  110.       Compile the Fortran code with the specified Fortran compiler.
  111.  
  112. Depending on what languages the package uses, some of these options may
  113. or may not be available. To see what is available, type:
  114.     % sh ./configure --help
  115.  
  116. About the configure script
  117. ==========================
  118.  
  119.    The `configure' shell script attempts to guess correct values for
  120. various system-dependent variables used during compilation.  It uses
  121. those values to create a `Makefile' in each directory of the package.
  122. It may also create one or more `.h' files containing system-dependent
  123. definitions.  Finally, it creates a shell script `config.status' that
  124. you can run in the future to recreate the current configuration, a file
  125. `config.cache' that saves the results of its tests to speed up
  126. reconfiguring, and a file `config.log' containing compiler output
  127. (useful mainly for debugging `configure').
  128.  
  129.    If you need to do unusual things to compile the package, please try
  130. to figure out how `configure' could check whether to do them, and mail
  131. diffs or instructions to the address given in the `README' so they can
  132. be considered for the next release.  If at some point `config.cache'
  133. contains results you don't want to keep, you may remove or edit it.
  134.  
  135.    The file `configure.in' is used to create `configure' by a program
  136. called `autoconf'.  You only need `configure.in' if you want to change
  137. it or regenerate `configure' using a newer version of `autoconf'.
  138.  
  139. Advanced installation options.
  140. ==============================
  141.  
  142.    The `configure' script also understands the following more advanced
  143. options, to handle situations for which `--prefix' alone is not sufficient.
  144.  
  145.    You can specify separate installation prefixes for
  146. architecture-specific files and architecture-independent files.  If you
  147. give `configure' the option `--exec-prefix=PATH', the package will use
  148. PATH as the prefix for installing programs and libraries.
  149. Documentation and other data files will still use the regular prefix.
  150.  
  151.    In addition, if you use an unusual directory layout you can give
  152. options like `--bindir=PATH' to specify different values for particular
  153. kinds of files.  Run `configure --help' for a list of the directories
  154. you can set and what kinds of files go in them.
  155.  
  156.    If the package supports it, you can cause programs to be installed
  157. with an extra prefix or suffix on their names by giving `configure' the
  158. option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
  159.  
  160. Optional Features
  161. =================
  162.  
  163.    Some packages pay attention to `--enable-FEATURE' options to
  164. `configure', where FEATURE indicates an optional part of the package.
  165. They may also pay attention to `--with-PACKAGE' options, where PACKAGE
  166. is something like `gnu-as' or `x' (for the X Window System).  The
  167. `README' should mention any `--enable-' and `--with-' options that the
  168. package recognizes.
  169.  
  170.    For packages that use the X Window System, `configure' can usually
  171. find the X include and library files automatically, but if it doesn't,
  172. you can use the `configure' options `--x-includes=DIR' and
  173. `--x-libraries=DIR' to specify their locations.
  174.  
  175.